[INFO] fetching crate syscoin 0.16.15...
[INFO] checking syscoin-0.16.15 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate syscoin 0.16.15 into /workspace/builds/worker-3-tc1/source
[INFO] validating manifest of crates.io crate syscoin 0.16.15 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate syscoin 0.16.15
[INFO] finished tweaking crates.io crate syscoin 0.16.15
[INFO] tweaked toml for crates.io crate syscoin 0.16.15 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cc v1.0.26
[INFO] [stderr]   Downloaded secp256k1 v0.12.2
[INFO] [stderr]   Downloaded syscoin-bech32 v0.8.4
[INFO] [stderr]   Downloaded bitcoinconsensus v0.16.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ea7f45aedb891b54a818e1bec4a0deae0e15942289fdb2387092b1370c4b1e0d
[INFO] running `Command { std: "docker" "start" "-a" "ea7f45aedb891b54a818e1bec4a0deae0e15942289fdb2387092b1370c4b1e0d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ea7f45aedb891b54a818e1bec4a0deae0e15942289fdb2387092b1370c4b1e0d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ea7f45aedb891b54a818e1bec4a0deae0e15942289fdb2387092b1370c4b1e0d", kill_on_drop: false }`
[INFO] [stdout] ea7f45aedb891b54a818e1bec4a0deae0e15942289fdb2387092b1370c4b1e0d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5d659d304d0f4b71f095bbac5261285d9d26d466cb0a5b82c3a417f207ccee54
[INFO] running `Command { std: "docker" "start" "-a" "5d659d304d0f4b71f095bbac5261285d9d26d466cb0a5b82c3a417f207ccee54", kill_on_drop: false }`
[INFO] [stderr]    Compiling cc v1.0.26
[INFO] [stderr]     Checking bech32 v0.6.0
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking bitcoin_hashes v0.3.2
[INFO] [stderr]     Checking hex v0.3.2
[INFO] [stderr]     Checking syscoin-bech32 v0.8.4
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]    Compiling secp256k1 v0.12.2
[INFO] [stderr]     Checking syscoin v0.16.15 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/blockdata/opcodes.rs:816:1
[INFO] [stdout]     |
[INFO] [stdout] 816 | /// "Ordinary" opcodes -- should be 60 of these
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:416:14
[INFO] [stdout]     |
[INFO] [stdout] 416 |             0...0xFC => 1,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:417:17
[INFO] [stdout]     |
[INFO] [stdout] 417 |             0xFD...0xFFFF => 3,
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:418:20
[INFO] [stdout]     |
[INFO] [stdout] 418 |             0x10000...0xFFFFFFFF => 5,
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:428:14
[INFO] [stdout]     |
[INFO] [stdout] 428 |             0...0xFC => (self.0 as u8).consensus_encode(s),
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:429:17
[INFO] [stdout]     |
[INFO] [stdout] 429 |             0xFD...0xFFFF => {
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:433:20
[INFO] [stdout]     |
[INFO] [stdout] 433 |             0x10000...0xFFFFFFFF => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Hash` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                               ---- the item `Hash` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 140 |         use bitcoin_hashes::Hash;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hash160` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:159:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                      ------- the item `hash160` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 159 |         use bitcoin_hashes::hash160;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Hash` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:161:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                               ---- the item `Hash` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 161 |         use bitcoin_hashes::Hash;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         b'0'...b'9' => c - '0' as u8,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |         b'a'...b'f' => c - 'a' as u8 + 10,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         b'A'...b'F' => c - 'A' as u8 + 10,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/network/mod.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 f.write_str(error::Error::description(self))
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/blockdata/script.rs:197:35
[INFO] [stdout]     |
[INFO] [stdout] 197 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:107:31
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:117:31
[INFO] [stdout]     |
[INFO] [stdout] 117 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:127:31
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:132:51
[INFO] [stdout]     |
[INFO] [stdout] 132 |                 write!(f, "{}: {}", error::Error::description(self), m)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:134:76
[INFO] [stdout]     |
[INFO] [stdout] 134 |             Error::ParseFailed(ref e) => write!(f, "{}: {}", error::Error::description(self), e),
[INFO] [stdout]     |                                                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:136:51
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 write!(f, "{}: {}", error::Error::description(self), wver)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:139:51
[INFO] [stdout]     |
[INFO] [stdout] 139 |                 write!(f, "{}: {}", error::Error::description(self), swflag)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:142:51
[INFO] [stdout]     |
[INFO] [stdout] 142 |                 write!(f, "{}: {}", error::Error::description(self), nwcmd)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:145:51
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 write!(f, "{}: {}", error::Error::description(self), d)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/util/mod.rs:81:43
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 f.write_str(error::Error::description(self))
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/bip32.rs:236:50
[INFO] [stdout]     |
[INFO] [stdout] 236 |             Error::Ecdsa(ref e) => error::Error::description(e),
[INFO] [stdout]     |                                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/network/mod.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blockdata/script.rs:202:32
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blockdata/transaction.rs:137:32
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn cause(&self) -> Option<&::std::error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn cause(&self) -> Option<&dyn (::std::error::Error)> {
[INFO] [stdout]     |                                +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:152:32
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/mod.rs:88:32
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/base58.rs:62:32
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/bip32.rs:225:32
[INFO] [stdout]     |
[INFO] [stdout] 225 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 225 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/contracthash.rs:76:32
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/privkey.rs:96:37
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn fmt_wif(&self, fmt: &mut fmt::Write) -> fmt::Result {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn fmt_wif(&self, fmt: &mut dyn fmt::Write) -> fmt::Result {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/blockdata/opcodes.rs:816:1
[INFO] [stdout]     |
[INFO] [stdout] 816 | /// "Ordinary" opcodes -- should be 60 of these
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:416:14
[INFO] [stdout]     |
[INFO] [stdout] 416 |             0...0xFC => 1,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:417:17
[INFO] [stdout]     |
[INFO] [stdout] 417 |             0xFD...0xFFFF => 3,
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:418:20
[INFO] [stdout]     |
[INFO] [stdout] 418 |             0x10000...0xFFFFFFFF => 5,
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:428:14
[INFO] [stdout]     |
[INFO] [stdout] 428 |             0...0xFC => (self.0 as u8).consensus_encode(s),
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:429:17
[INFO] [stdout]     |
[INFO] [stdout] 429 |             0xFD...0xFFFF => {
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:433:20
[INFO] [stdout]     |
[INFO] [stdout] 433 |             0x10000...0xFFFFFFFF => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Hash` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                               ---- the item `Hash` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 140 |         use bitcoin_hashes::Hash;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hash160` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:159:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                      ------- the item `hash160` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 159 |         use bitcoin_hashes::hash160;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Hash` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:161:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                               ---- the item `Hash` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 161 |         use bitcoin_hashes::Hash;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         b'0'...b'9' => c - '0' as u8,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |         b'a'...b'f' => c - 'a' as u8 + 10,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         b'A'...b'F' => c - 'A' as u8 + 10,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/network/mod.rs:65:35
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/network/mod.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 f.write_str(error::Error::description(self))
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/blockdata/script.rs:197:35
[INFO] [stdout]     |
[INFO] [stdout] 197 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:107:31
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:117:31
[INFO] [stdout]     |
[INFO] [stdout] 117 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:127:31
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:132:51
[INFO] [stdout]     |
[INFO] [stdout] 132 |                 write!(f, "{}: {}", error::Error::description(self), m)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:134:76
[INFO] [stdout]     |
[INFO] [stdout] 134 |             Error::ParseFailed(ref e) => write!(f, "{}: {}", error::Error::description(self), e),
[INFO] [stdout]     |                                                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:136:51
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 write!(f, "{}: {}", error::Error::description(self), wver)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:139:51
[INFO] [stdout]     |
[INFO] [stdout] 139 |                 write!(f, "{}: {}", error::Error::description(self), swflag)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:142:51
[INFO] [stdout]     |
[INFO] [stdout] 142 |                 write!(f, "{}: {}", error::Error::description(self), nwcmd)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:145:51
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 write!(f, "{}: {}", error::Error::description(self), d)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/util/mod.rs:81:43
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 f.write_str(error::Error::description(self))
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/bip32.rs:236:50
[INFO] [stdout]     |
[INFO] [stdout] 236 |             Error::Ecdsa(ref e) => error::Error::description(e),
[INFO] [stdout]     |                                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/network/mod.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:172:35
[INFO] [stdout]     |
[INFO] [stdout] 172 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:173:39
[INFO] [stdout]     |
[INFO] [stdout] 173 |             Error::Base58(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:174:39
[INFO] [stdout]     |
[INFO] [stdout] 174 |             Error::Bech32(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:175:42
[INFO] [stdout]     |
[INFO] [stdout] 175 |             Error::ByteOrder(ref e) => e.description(),
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blockdata/script.rs:202:32
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blockdata/transaction.rs:137:32
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn cause(&self) -> Option<&::std::error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn cause(&self) -> Option<&dyn (::std::error::Error)> {
[INFO] [stdout]     |                                +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:152:32
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/mod.rs:88:32
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/base58.rs:62:32
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/bip32.rs:225:32
[INFO] [stdout]     |
[INFO] [stdout] 225 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 225 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/contracthash.rs:76:32
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/privkey.rs:96:37
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn fmt_wif(&self, fmt: &mut fmt::Write) -> fmt::Result {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn fmt_wif(&self, fmt: &mut dyn fmt::Write) -> fmt::Result {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/uint.rs:351:18
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 <fmt::Debug>::fmt(self, f)
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/uint.rs:351:18
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 <fmt::Debug>::fmt(self, f)
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/util/mod.rs:99:42
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Error::Secp256k1(ref e) => e.description(),
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/mod.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |             Error::Encode(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/mod.rs:101:40
[INFO] [stdout]     |
[INFO] [stdout] 101 |             Error::Network(ref e) => e.description(),
[INFO] [stdout]     |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/network/mod.rs:65:35
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 45 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:172:35
[INFO] [stdout]     |
[INFO] [stdout] 172 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:173:39
[INFO] [stdout]     |
[INFO] [stdout] 173 |             Error::Base58(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:174:39
[INFO] [stdout]     |
[INFO] [stdout] 174 |             Error::Bech32(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:175:42
[INFO] [stdout]     |
[INFO] [stdout] 175 |             Error::ByteOrder(ref e) => e.description(),
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/uint.rs:351:18
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 <fmt::Debug>::fmt(self, f)
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/uint.rs:351:18
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 <fmt::Debug>::fmt(self, f)
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/util/mod.rs:99:42
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Error::Secp256k1(ref e) => e.description(),
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/mod.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |             Error::Encode(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/mod.rs:101:40
[INFO] [stdout]     |
[INFO] [stdout] 101 |             Error::Network(ref e) => e.description(),
[INFO] [stdout]     |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:850:25
[INFO] [stdout]     |
[INFO] [stdout] 850 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 850 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 850 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:854:25
[INFO] [stdout]     |
[INFO] [stdout] 854 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 854 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 854 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:858:25
[INFO] [stdout]     |
[INFO] [stdout] 858 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 858 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 858 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:862:25
[INFO] [stdout]     |
[INFO] [stdout] 862 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 862 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 862 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:866:25
[INFO] [stdout]     |
[INFO] [stdout] 866 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 866 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 866 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:870:25
[INFO] [stdout]     |
[INFO] [stdout] 870 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 870 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 870 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 51 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.55s
[INFO] running `Command { std: "docker" "inspect" "5d659d304d0f4b71f095bbac5261285d9d26d466cb0a5b82c3a417f207ccee54", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5d659d304d0f4b71f095bbac5261285d9d26d466cb0a5b82c3a417f207ccee54", kill_on_drop: false }`
[INFO] [stdout] 5d659d304d0f4b71f095bbac5261285d9d26d466cb0a5b82c3a417f207ccee54
[INFO] checking syscoin-0.16.15 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate syscoin 0.16.15 into /workspace/builds/worker-3-tc2/source
[INFO] validating manifest of crates.io crate syscoin 0.16.15 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate syscoin 0.16.15
[INFO] finished tweaking crates.io crate syscoin 0.16.15
[INFO] tweaked toml for crates.io crate syscoin 0.16.15 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4b4e16671a0a838465e8a0091e356d8f5cdda49aa7ae5a7701c68b53f52116da
[INFO] running `Command { std: "docker" "start" "-a" "4b4e16671a0a838465e8a0091e356d8f5cdda49aa7ae5a7701c68b53f52116da", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4b4e16671a0a838465e8a0091e356d8f5cdda49aa7ae5a7701c68b53f52116da", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4b4e16671a0a838465e8a0091e356d8f5cdda49aa7ae5a7701c68b53f52116da", kill_on_drop: false }`
[INFO] [stdout] 4b4e16671a0a838465e8a0091e356d8f5cdda49aa7ae5a7701c68b53f52116da
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 834a22b30feae05702e2f17b454e2b2e0799710d2c5136a0b55a0e17d548f180
[INFO] running `Command { std: "docker" "start" "-a" "834a22b30feae05702e2f17b454e2b2e0799710d2c5136a0b55a0e17d548f180", kill_on_drop: false }`
[INFO] [stderr]    Compiling cc v1.0.26
[INFO] [stderr]     Checking bech32 v0.6.0
[INFO] [stderr]     Checking hex v0.3.2
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking bitcoin_hashes v0.3.2
[INFO] [stderr]     Checking syscoin-bech32 v0.8.4
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]    Compiling secp256k1 v0.12.2
[INFO] [stderr]     Checking syscoin v0.16.15 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/network/address.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |         if addr[0..3] == ONION {
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/network/message.rs:50:18
[INFO] [stdout]    |
[INFO] [stdout] 50 |         for x in 0..strbytes.len() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/blockdata/opcodes.rs:816:1
[INFO] [stdout]     |
[INFO] [stdout] 816 | /// "Ordinary" opcodes -- should be 60 of these
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/blockdata/script.rs:66:49
[INFO] [stdout]    |
[INFO] [stdout] 66 |                         match read_uint(&self.0[index..], 1) {
[INFO] [stdout]    |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/blockdata/script.rs:82:49
[INFO] [stdout]    |
[INFO] [stdout] 82 |                         match read_uint(&self.0[index..], 2) {
[INFO] [stdout]    |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/blockdata/script.rs:98:49
[INFO] [stdout]    |
[INFO] [stdout] 98 |                         match read_uint(&self.0[index..], 4) {
[INFO] [stdout]    |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:126:39
[INFO] [stdout]     |
[INFO] [stdout] 126 |                     for ch in &self.0[index..index + data_len] {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:504:66
[INFO] [stdout]     |
[INFO] [stdout] 504 |                 let ret = Some(Instruction::PushBytes(&self.data[1..n + 1]));
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:505:40
[INFO] [stdout]     |
[INFO] [stdout] 505 |                 self.data = &self.data[n + 1..];
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:513:52
[INFO] [stdout]     |
[INFO] [stdout] 513 |                 let n = match read_uint(&self.data[1..], 1) {
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:528:66
[INFO] [stdout]     |
[INFO] [stdout] 528 |                 let ret = Some(Instruction::PushBytes(&self.data[2..n + 2]));
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:529:40
[INFO] [stdout]     |
[INFO] [stdout] 529 |                 self.data = &self.data[n + 2..];
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:537:52
[INFO] [stdout]     |
[INFO] [stdout] 537 |                 let n = match read_uint(&self.data[1..], 2) {
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:552:66
[INFO] [stdout]     |
[INFO] [stdout] 552 |                 let ret = Some(Instruction::PushBytes(&self.data[3..n + 3]));
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:553:40
[INFO] [stdout]     |
[INFO] [stdout] 553 |                 self.data = &self.data[n + 3..];
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:561:52
[INFO] [stdout]     |
[INFO] [stdout] 561 |                 let n = match read_uint(&self.data[1..], 4) {
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:576:66
[INFO] [stdout]     |
[INFO] [stdout] 576 |                 let ret = Some(Instruction::PushBytes(&self.data[5..n + 5]));
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:577:40
[INFO] [stdout]     |
[INFO] [stdout] 577 |                 self.data = &self.data[n + 5..];
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:583:40
[INFO] [stdout]     |
[INFO] [stdout] 583 |                 self.data = &self.data[1..];
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/transaction.rs:176:33
[INFO] [stdout]     |
[INFO] [stdout] 176 |             vout: parse_vout(&s[colon + 1..])?,
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:416:14
[INFO] [stdout]     |
[INFO] [stdout] 416 |             0...0xFC => 1,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:417:17
[INFO] [stdout]     |
[INFO] [stdout] 417 |             0xFD...0xFFFF => 3,
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:418:20
[INFO] [stdout]     |
[INFO] [stdout] 418 |             0x10000...0xFFFFFFFF => 5,
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:428:14
[INFO] [stdout]     |
[INFO] [stdout] 428 |             0...0xFC => (self.0 as u8).consensus_encode(s),
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:429:17
[INFO] [stdout]     |
[INFO] [stdout] 429 |             0xFD...0xFFFF => {
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:433:20
[INFO] [stdout]     |
[INFO] [stdout] 433 |             0x10000...0xFFFFFFFF => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/consensus/encode.rs:580:18
[INFO] [stdout]     |
[INFO] [stdout] 580 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/consensus/encode.rs:606:18
[INFO] [stdout]     |
[INFO] [stdout] 606 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/consensus/encode.rs:668:18
[INFO] [stdout]     |
[INFO] [stdout] 668 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/consensus/encode.rs:755:18
[INFO] [stdout]     |
[INFO] [stdout] 755 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Hash` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                               ---- the item `Hash` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 140 |         use bitcoin_hashes::Hash;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hash160` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:159:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                      ------- the item `hash160` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 159 |         use bitcoin_hashes::hash160;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Hash` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:161:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                               ---- the item `Hash` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 161 |         use bitcoin_hashes::Hash;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:214:26
[INFO] [stdout]     |
[INFO] [stdout] 214 |                 prefixed[1..].copy_from_slice(&hash[..]);
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:223:26
[INFO] [stdout]     |
[INFO] [stdout] 223 |                 prefixed[1..].copy_from_slice(&hash[..]);
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:279:69
[INFO] [stdout]     |
[INFO] [stdout] 279 |                 Payload::PubkeyHash(hash160::Hash::from_slice(&data[1..]).unwrap()),
[INFO] [stdout]     |                                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:283:69
[INFO] [stdout]     |
[INFO] [stdout] 283 |                 Payload::ScriptHash(hash160::Hash::from_slice(&data[1..]).unwrap()),
[INFO] [stdout]     |                                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:287:69
[INFO] [stdout]     |
[INFO] [stdout] 287 |                 Payload::PubkeyHash(hash160::Hash::from_slice(&data[1..]).unwrap()),
[INFO] [stdout]     |                                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:291:69
[INFO] [stdout]     |
[INFO] [stdout] 291 |                 Payload::ScriptHash(hash160::Hash::from_slice(&data[1..]).unwrap()),
[INFO] [stdout]     |                                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:105:20
[INFO] [stdout]     |
[INFO] [stdout] 105 |         self.stack[0..self.len].iter().chain(self.heap.iter())
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:110:20
[INFO] [stdout]     |
[INFO] [stdout] 110 |         self.stack[0..self.len]
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:292:46
[INFO] [stdout]     |
[INFO] [stdout] 292 |     let actual = LittleEndian::read_u32(&ret[ck_start..(ck_start + 4)]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:331:14
[INFO] [stdout]     |
[INFO] [stdout] 331 |     for _ in 0..leading_zero_count {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:360:53
[INFO] [stdout]     |
[INFO] [stdout] 360 |     encode_iter(data.iter().cloned().chain(checksum[0..4].iter().cloned()))
[INFO] [stdout]     |                                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:367:52
[INFO] [stdout]     |
[INFO] [stdout] 367 |     let iter = data.iter().cloned().chain(checksum[0..4].iter().cloned());
[INFO] [stdout]     |                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/internal_macros.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 for i in 0..$len {
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl_array_newtype!(ChainCode, u8, 32);
[INFO] [stdout]     | -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/internal_macros.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 for i in 0..$len {
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:42:1
[INFO] [stdout]     |
[INFO] [stdout] 42  | impl_array_newtype!(Fingerprint, u8, 4);
[INFO] [stdout]     | --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:262:54
[INFO] [stdout]     |
[INFO] [stdout] 262 |             chain_code: ChainCode::from(&hmac_result[32..]),
[INFO] [stdout]     |                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:312:54
[INFO] [stdout]     |
[INFO] [stdout] 312 |             chain_code: ChainCode::from(&hmac_result[32..]),
[INFO] [stdout]     |                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:323:50
[INFO] [stdout]     |
[INFO] [stdout] 323 |         Fingerprint::from(&self.identifier(secp)[0..4])
[INFO] [stdout]     |                                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:371:63
[INFO] [stdout]     |
[INFO] [stdout] 371 |                 let chain_code = ChainCode::from(&hmac_result[32..]);
[INFO] [stdout]     |                                                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:404:46
[INFO] [stdout]     |
[INFO] [stdout] 404 |         Fingerprint::from(&self.identifier()[0..4])
[INFO] [stdout]     |                                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |         ret[0..4].copy_from_slice(
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:418:13
[INFO] [stdout]     |
[INFO] [stdout] 418 |         ret[5..9].copy_from_slice(&self.parent_fingerprint[..]);
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:420:39
[INFO] [stdout]     |
[INFO] [stdout] 420 |         BigEndian::write_u32(&mut ret[9..13], u32::from(self.child_number));
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:422:13
[INFO] [stdout]     |
[INFO] [stdout] 422 |         ret[13..45].copy_from_slice(&self.chain_code[..]);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:424:13
[INFO] [stdout]     |
[INFO] [stdout] 424 |         ret[46..78].copy_from_slice(&self.secret_key[..]);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:439:45
[INFO] [stdout]     |
[INFO] [stdout] 439 |         let cn_int: u32 = Cursor::new(&data[9..13]).read_u32::<BigEndian>().unwrap();
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:443:31
[INFO] [stdout]     |
[INFO] [stdout] 443 |             network: if &data[0..4] == [0x04u8, 0x88, 0xAD, 0xE4] {
[INFO] [stdout]     |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 |             } else if &data[0..4] == [0x04u8, 0x35, 0x83, 0x94] {
[INFO] [stdout]     |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:448:65
[INFO] [stdout]     |
[INFO] [stdout] 448 |                 return Err(base58::Error::InvalidVersion((&data[0..4]).to_vec()));
[INFO] [stdout]     |                                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:451:57
[INFO] [stdout]     |
[INFO] [stdout] 451 |             parent_fingerprint: Fingerprint::from(&data[5..9]),
[INFO] [stdout]     |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:453:47
[INFO] [stdout]     |
[INFO] [stdout] 453 |             chain_code: ChainCode::from(&data[13..45]),
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:454:53
[INFO] [stdout]     |
[INFO] [stdout] 454 |             secret_key: SecretKey::from_slice(&data[46..78])
[INFO] [stdout]     |                                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:463:13
[INFO] [stdout]     |
[INFO] [stdout] 463 |         ret[0..4].copy_from_slice(
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         ret[5..9].copy_from_slice(&self.parent_fingerprint[..]);
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:472:39
[INFO] [stdout]     |
[INFO] [stdout] 472 |         BigEndian::write_u32(&mut ret[9..13], u32::from(self.child_number));
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:474:13
[INFO] [stdout]     |
[INFO] [stdout] 474 |         ret[13..45].copy_from_slice(&self.chain_code[..]);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:475:13
[INFO] [stdout]     |
[INFO] [stdout] 475 |         ret[45..78].copy_from_slice(&self.public_key.serialize()[..]);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:490:45
[INFO] [stdout]     |
[INFO] [stdout] 490 |         let cn_int: u32 = Cursor::new(&data[9..13]).read_u32::<BigEndian>().unwrap();
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:494:31
[INFO] [stdout]     |
[INFO] [stdout] 494 |             network: if &data[0..4] == [0x04u8, 0x88, 0xB2, 0x1E] {
[INFO] [stdout]     |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:496:29
[INFO] [stdout]     |
[INFO] [stdout] 496 |             } else if &data[0..4] == [0x04u8, 0x35, 0x87, 0xCF] {
[INFO] [stdout]     |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:499:65
[INFO] [stdout]     |
[INFO] [stdout] 499 |                 return Err(base58::Error::InvalidVersion((&data[0..4]).to_vec()));
[INFO] [stdout]     |                                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:502:57
[INFO] [stdout]     |
[INFO] [stdout] 502 |             parent_fingerprint: Fingerprint::from(&data[5..9]),
[INFO] [stdout]     |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:504:47
[INFO] [stdout]     |
[INFO] [stdout] 504 |             chain_code: ChainCode::from(&data[13..45]),
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:505:53
[INFO] [stdout]     |
[INFO] [stdout] 505 |             public_key: PublicKey::from_slice(&data[45..78])
[INFO] [stdout]     |                                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/hash.rs:43:16
[INFO] [stdout]    |
[INFO] [stdout] 43 |     for idx in 0..((data.len() + 1) / 2) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         b'0'...b'9' => c - '0' as u8,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |         b'a'...b'f' => c - 'a' as u8 + 10,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         b'A'...b'F' => c - 'A' as u8 + 10,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/misc.rs:91:22
[INFO] [stdout]    |
[INFO] [stdout] 91 |         if &haystack[i..(i + needle.len())] == needle {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/misc.rs:92:22
[INFO] [stdout]    |
[INFO] [stdout] 92 |             for j in i..top {
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/privkey.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |         ret[1..33].copy_from_slice(&self.key[..]);
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/privkey.rs:145:47
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let key = SecretKey::from_slice(&data[1..33])
[INFO] [stdout]     |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/internal_macros.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 for i in 0..$len {
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:376:1
[INFO] [stdout]     |
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:52:26
[INFO] [stdout]     |
[INFO] [stdout] 52  |                 for i in 1..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:66:26
[INFO] [stdout]     |
[INFO] [stdout] 66  |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:105:26
[INFO] [stdout]     |
[INFO] [stdout] 105 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:135:26
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 for i in 0..(2 * $n_words) {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:197:26
[INFO] [stdout]     |
[INFO] [stdout] 197 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:211:26
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 for i in 0..($n_words - 1) {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:245:26
[INFO] [stdout]     |
[INFO] [stdout] 245 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:260:26
[INFO] [stdout]     |
[INFO] [stdout] 260 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:275:26
[INFO] [stdout]     |
[INFO] [stdout] 275 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:289:26
[INFO] [stdout]     |
[INFO] [stdout] 289 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:304:26
[INFO] [stdout]     |
[INFO] [stdout] 304 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:326:26
[INFO] [stdout]     |
[INFO] [stdout] 326 |                 for i in word_shift..$n_words {
[INFO] [stdout]     |                          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/internal_macros.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 for i in 0..$len {
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:52:26
[INFO] [stdout]     |
[INFO] [stdout] 52  |                 for i in 1..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:66:26
[INFO] [stdout]     |
[INFO] [stdout] 66  |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:105:26
[INFO] [stdout]     |
[INFO] [stdout] 105 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:135:26
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 for i in 0..(2 * $n_words) {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:197:26
[INFO] [stdout]     |
[INFO] [stdout] 197 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:211:26
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 for i in 0..($n_words - 1) {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:245:26
[INFO] [stdout]     |
[INFO] [stdout] 245 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:260:26
[INFO] [stdout]     |
[INFO] [stdout] 260 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:275:26
[INFO] [stdout]     |
[INFO] [stdout] 275 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:289:26
[INFO] [stdout]     |
[INFO] [stdout] 289 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:304:26
[INFO] [stdout]     |
[INFO] [stdout] 304 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:326:26
[INFO] [stdout]     |
[INFO] [stdout] 326 |                 for i in word_shift..$n_words {
[INFO] [stdout]     |                          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/network/mod.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 f.write_str(error::Error::description(self))
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/blockdata/script.rs:197:35
[INFO] [stdout]     |
[INFO] [stdout] 197 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:107:31
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:117:31
[INFO] [stdout]     |
[INFO] [stdout] 117 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:127:31
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:132:51
[INFO] [stdout]     |
[INFO] [stdout] 132 |                 write!(f, "{}: {}", error::Error::description(self), m)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:134:76
[INFO] [stdout]     |
[INFO] [stdout] 134 |             Error::ParseFailed(ref e) => write!(f, "{}: {}", error::Error::description(self), e),
[INFO] [stdout]     |                                                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:136:51
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 write!(f, "{}: {}", error::Error::description(self), wver)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:139:51
[INFO] [stdout]     |
[INFO] [stdout] 139 |                 write!(f, "{}: {}", error::Error::description(self), swflag)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:142:51
[INFO] [stdout]     |
[INFO] [stdout] 142 |                 write!(f, "{}: {}", error::Error::description(self), nwcmd)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:145:51
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 write!(f, "{}: {}", error::Error::description(self), d)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/util/mod.rs:81:43
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 f.write_str(error::Error::description(self))
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/bip32.rs:236:50
[INFO] [stdout]     |
[INFO] [stdout] 236 |             Error::Ecdsa(ref e) => error::Error::description(e),
[INFO] [stdout]     |                                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/network/mod.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blockdata/script.rs:202:32
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blockdata/transaction.rs:137:32
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn cause(&self) -> Option<&::std::error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn cause(&self) -> Option<&dyn (::std::error::Error)> {
[INFO] [stdout]     |                                +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:152:32
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/mod.rs:88:32
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/base58.rs:62:32
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/bip32.rs:225:32
[INFO] [stdout]     |
[INFO] [stdout] 225 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 225 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/contracthash.rs:76:32
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/privkey.rs:96:37
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn fmt_wif(&self, fmt: &mut fmt::Write) -> fmt::Result {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn fmt_wif(&self, fmt: &mut dyn fmt::Write) -> fmt::Result {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/network/address.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |         if addr[0..3] == ONION {
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/network/message.rs:50:18
[INFO] [stdout]    |
[INFO] [stdout] 50 |         for x in 0..strbytes.len() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/blockdata/opcodes.rs:816:1
[INFO] [stdout]     |
[INFO] [stdout] 816 | /// "Ordinary" opcodes -- should be 60 of these
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/blockdata/script.rs:66:49
[INFO] [stdout]    |
[INFO] [stdout] 66 |                         match read_uint(&self.0[index..], 1) {
[INFO] [stdout]    |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/blockdata/script.rs:82:49
[INFO] [stdout]    |
[INFO] [stdout] 82 |                         match read_uint(&self.0[index..], 2) {
[INFO] [stdout]    |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/blockdata/script.rs:98:49
[INFO] [stdout]    |
[INFO] [stdout] 98 |                         match read_uint(&self.0[index..], 4) {
[INFO] [stdout]    |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:126:39
[INFO] [stdout]     |
[INFO] [stdout] 126 |                     for ch in &self.0[index..index + data_len] {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:504:66
[INFO] [stdout]     |
[INFO] [stdout] 504 |                 let ret = Some(Instruction::PushBytes(&self.data[1..n + 1]));
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:505:40
[INFO] [stdout]     |
[INFO] [stdout] 505 |                 self.data = &self.data[n + 1..];
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:513:52
[INFO] [stdout]     |
[INFO] [stdout] 513 |                 let n = match read_uint(&self.data[1..], 1) {
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:528:66
[INFO] [stdout]     |
[INFO] [stdout] 528 |                 let ret = Some(Instruction::PushBytes(&self.data[2..n + 2]));
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:529:40
[INFO] [stdout]     |
[INFO] [stdout] 529 |                 self.data = &self.data[n + 2..];
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:537:52
[INFO] [stdout]     |
[INFO] [stdout] 537 |                 let n = match read_uint(&self.data[1..], 2) {
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:552:66
[INFO] [stdout]     |
[INFO] [stdout] 552 |                 let ret = Some(Instruction::PushBytes(&self.data[3..n + 3]));
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:553:40
[INFO] [stdout]     |
[INFO] [stdout] 553 |                 self.data = &self.data[n + 3..];
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:561:52
[INFO] [stdout]     |
[INFO] [stdout] 561 |                 let n = match read_uint(&self.data[1..], 4) {
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:576:66
[INFO] [stdout]     |
[INFO] [stdout] 576 |                 let ret = Some(Instruction::PushBytes(&self.data[5..n + 5]));
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:577:40
[INFO] [stdout]     |
[INFO] [stdout] 577 |                 self.data = &self.data[n + 5..];
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/script.rs:583:40
[INFO] [stdout]     |
[INFO] [stdout] 583 |                 self.data = &self.data[1..];
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/blockdata/transaction.rs:176:33
[INFO] [stdout]     |
[INFO] [stdout] 176 |             vout: parse_vout(&s[colon + 1..])?,
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:416:14
[INFO] [stdout]     |
[INFO] [stdout] 416 |             0...0xFC => 1,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:417:17
[INFO] [stdout]     |
[INFO] [stdout] 417 |             0xFD...0xFFFF => 3,
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:418:20
[INFO] [stdout]     |
[INFO] [stdout] 418 |             0x10000...0xFFFFFFFF => 5,
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:428:14
[INFO] [stdout]     |
[INFO] [stdout] 428 |             0...0xFC => (self.0 as u8).consensus_encode(s),
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:429:17
[INFO] [stdout]     |
[INFO] [stdout] 429 |             0xFD...0xFFFF => {
[INFO] [stdout]     |                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:433:20
[INFO] [stdout]     |
[INFO] [stdout] 433 |             0x10000...0xFFFFFFFF => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/consensus/encode.rs:580:18
[INFO] [stdout]     |
[INFO] [stdout] 580 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/consensus/encode.rs:606:18
[INFO] [stdout]     |
[INFO] [stdout] 606 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/consensus/encode.rs:668:18
[INFO] [stdout]     |
[INFO] [stdout] 668 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/consensus/encode.rs:755:18
[INFO] [stdout]     |
[INFO] [stdout] 755 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Hash` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                               ---- the item `Hash` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 140 |         use bitcoin_hashes::Hash;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `hash160` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:159:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                      ------- the item `hash160` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 159 |         use bitcoin_hashes::hash160;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Hash` is imported redundantly
[INFO] [stdout]    --> src/util/address.rs:161:13
[INFO] [stdout]     |
[INFO] [stdout] 43  | use bitcoin_hashes::{hash160, Hash};
[INFO] [stdout]     |                               ---- the item `Hash` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 161 |         use bitcoin_hashes::Hash;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:214:26
[INFO] [stdout]     |
[INFO] [stdout] 214 |                 prefixed[1..].copy_from_slice(&hash[..]);
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:223:26
[INFO] [stdout]     |
[INFO] [stdout] 223 |                 prefixed[1..].copy_from_slice(&hash[..]);
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:279:69
[INFO] [stdout]     |
[INFO] [stdout] 279 |                 Payload::PubkeyHash(hash160::Hash::from_slice(&data[1..]).unwrap()),
[INFO] [stdout]     |                                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:283:69
[INFO] [stdout]     |
[INFO] [stdout] 283 |                 Payload::ScriptHash(hash160::Hash::from_slice(&data[1..]).unwrap()),
[INFO] [stdout]     |                                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:287:69
[INFO] [stdout]     |
[INFO] [stdout] 287 |                 Payload::PubkeyHash(hash160::Hash::from_slice(&data[1..]).unwrap()),
[INFO] [stdout]     |                                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/address.rs:291:69
[INFO] [stdout]     |
[INFO] [stdout] 291 |                 Payload::ScriptHash(hash160::Hash::from_slice(&data[1..]).unwrap()),
[INFO] [stdout]     |                                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:105:20
[INFO] [stdout]     |
[INFO] [stdout] 105 |         self.stack[0..self.len].iter().chain(self.heap.iter())
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:110:20
[INFO] [stdout]     |
[INFO] [stdout] 110 |         self.stack[0..self.len]
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:292:46
[INFO] [stdout]     |
[INFO] [stdout] 292 |     let actual = LittleEndian::read_u32(&ret[ck_start..(ck_start + 4)]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:331:14
[INFO] [stdout]     |
[INFO] [stdout] 331 |     for _ in 0..leading_zero_count {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:360:53
[INFO] [stdout]     |
[INFO] [stdout] 360 |     encode_iter(data.iter().cloned().chain(checksum[0..4].iter().cloned()))
[INFO] [stdout]     |                                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base58.rs:367:52
[INFO] [stdout]     |
[INFO] [stdout] 367 |     let iter = data.iter().cloned().chain(checksum[0..4].iter().cloned());
[INFO] [stdout]     |                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/internal_macros.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 for i in 0..$len {
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl_array_newtype!(ChainCode, u8, 32);
[INFO] [stdout]     | -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/internal_macros.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 for i in 0..$len {
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:42:1
[INFO] [stdout]     |
[INFO] [stdout] 42  | impl_array_newtype!(Fingerprint, u8, 4);
[INFO] [stdout]     | --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:262:54
[INFO] [stdout]     |
[INFO] [stdout] 262 |             chain_code: ChainCode::from(&hmac_result[32..]),
[INFO] [stdout]     |                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:312:54
[INFO] [stdout]     |
[INFO] [stdout] 312 |             chain_code: ChainCode::from(&hmac_result[32..]),
[INFO] [stdout]     |                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:323:50
[INFO] [stdout]     |
[INFO] [stdout] 323 |         Fingerprint::from(&self.identifier(secp)[0..4])
[INFO] [stdout]     |                                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:371:63
[INFO] [stdout]     |
[INFO] [stdout] 371 |                 let chain_code = ChainCode::from(&hmac_result[32..]);
[INFO] [stdout]     |                                                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:404:46
[INFO] [stdout]     |
[INFO] [stdout] 404 |         Fingerprint::from(&self.identifier()[0..4])
[INFO] [stdout]     |                                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |         ret[0..4].copy_from_slice(
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:418:13
[INFO] [stdout]     |
[INFO] [stdout] 418 |         ret[5..9].copy_from_slice(&self.parent_fingerprint[..]);
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:420:39
[INFO] [stdout]     |
[INFO] [stdout] 420 |         BigEndian::write_u32(&mut ret[9..13], u32::from(self.child_number));
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:422:13
[INFO] [stdout]     |
[INFO] [stdout] 422 |         ret[13..45].copy_from_slice(&self.chain_code[..]);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:424:13
[INFO] [stdout]     |
[INFO] [stdout] 424 |         ret[46..78].copy_from_slice(&self.secret_key[..]);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:439:45
[INFO] [stdout]     |
[INFO] [stdout] 439 |         let cn_int: u32 = Cursor::new(&data[9..13]).read_u32::<BigEndian>().unwrap();
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:443:31
[INFO] [stdout]     |
[INFO] [stdout] 443 |             network: if &data[0..4] == [0x04u8, 0x88, 0xAD, 0xE4] {
[INFO] [stdout]     |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:445:29
[INFO] [stdout]     |
[INFO] [stdout] 445 |             } else if &data[0..4] == [0x04u8, 0x35, 0x83, 0x94] {
[INFO] [stdout]     |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:448:65
[INFO] [stdout]     |
[INFO] [stdout] 448 |                 return Err(base58::Error::InvalidVersion((&data[0..4]).to_vec()));
[INFO] [stdout]     |                                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:451:57
[INFO] [stdout]     |
[INFO] [stdout] 451 |             parent_fingerprint: Fingerprint::from(&data[5..9]),
[INFO] [stdout]     |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:453:47
[INFO] [stdout]     |
[INFO] [stdout] 453 |             chain_code: ChainCode::from(&data[13..45]),
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:454:53
[INFO] [stdout]     |
[INFO] [stdout] 454 |             secret_key: SecretKey::from_slice(&data[46..78])
[INFO] [stdout]     |                                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:463:13
[INFO] [stdout]     |
[INFO] [stdout] 463 |         ret[0..4].copy_from_slice(
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         ret[5..9].copy_from_slice(&self.parent_fingerprint[..]);
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:472:39
[INFO] [stdout]     |
[INFO] [stdout] 472 |         BigEndian::write_u32(&mut ret[9..13], u32::from(self.child_number));
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:474:13
[INFO] [stdout]     |
[INFO] [stdout] 474 |         ret[13..45].copy_from_slice(&self.chain_code[..]);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:475:13
[INFO] [stdout]     |
[INFO] [stdout] 475 |         ret[45..78].copy_from_slice(&self.public_key.serialize()[..]);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:490:45
[INFO] [stdout]     |
[INFO] [stdout] 490 |         let cn_int: u32 = Cursor::new(&data[9..13]).read_u32::<BigEndian>().unwrap();
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:494:31
[INFO] [stdout]     |
[INFO] [stdout] 494 |             network: if &data[0..4] == [0x04u8, 0x88, 0xB2, 0x1E] {
[INFO] [stdout]     |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:496:29
[INFO] [stdout]     |
[INFO] [stdout] 496 |             } else if &data[0..4] == [0x04u8, 0x35, 0x87, 0xCF] {
[INFO] [stdout]     |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:499:65
[INFO] [stdout]     |
[INFO] [stdout] 499 |                 return Err(base58::Error::InvalidVersion((&data[0..4]).to_vec()));
[INFO] [stdout]     |                                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:502:57
[INFO] [stdout]     |
[INFO] [stdout] 502 |             parent_fingerprint: Fingerprint::from(&data[5..9]),
[INFO] [stdout]     |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:504:47
[INFO] [stdout]     |
[INFO] [stdout] 504 |             chain_code: ChainCode::from(&data[13..45]),
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/bip32.rs:505:53
[INFO] [stdout]     |
[INFO] [stdout] 505 |             public_key: PublicKey::from_slice(&data[45..78])
[INFO] [stdout]     |                                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/hash.rs:43:16
[INFO] [stdout]    |
[INFO] [stdout] 43 |     for idx in 0..((data.len() + 1) / 2) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         b'0'...b'9' => c - '0' as u8,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |         b'a'...b'f' => c - 'a' as u8 + 10,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/util/misc.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         b'A'...b'F' => c - 'A' as u8 + 10,
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/misc.rs:91:22
[INFO] [stdout]    |
[INFO] [stdout] 91 |         if &haystack[i..(i + needle.len())] == needle {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/misc.rs:92:22
[INFO] [stdout]    |
[INFO] [stdout] 92 |             for j in i..top {
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/privkey.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |         ret[1..33].copy_from_slice(&self.key[..]);
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/privkey.rs:145:47
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let key = SecretKey::from_slice(&data[1..33])
[INFO] [stdout]     |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/internal_macros.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 for i in 0..$len {
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:376:1
[INFO] [stdout]     |
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:52:26
[INFO] [stdout]     |
[INFO] [stdout] 52  |                 for i in 1..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:66:26
[INFO] [stdout]     |
[INFO] [stdout] 66  |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:105:26
[INFO] [stdout]     |
[INFO] [stdout] 105 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:135:26
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 for i in 0..(2 * $n_words) {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:197:26
[INFO] [stdout]     |
[INFO] [stdout] 197 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:211:26
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 for i in 0..($n_words - 1) {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:245:26
[INFO] [stdout]     |
[INFO] [stdout] 245 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:260:26
[INFO] [stdout]     |
[INFO] [stdout] 260 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:275:26
[INFO] [stdout]     |
[INFO] [stdout] 275 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:289:26
[INFO] [stdout]     |
[INFO] [stdout] 289 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:304:26
[INFO] [stdout]     |
[INFO] [stdout] 304 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:326:26
[INFO] [stdout]     |
[INFO] [stdout] 326 |                 for i in word_shift..$n_words {
[INFO] [stdout]     |                          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/internal_macros.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 for i in 0..$len {
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:52:26
[INFO] [stdout]     |
[INFO] [stdout] 52  |                 for i in 1..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:66:26
[INFO] [stdout]     |
[INFO] [stdout] 66  |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:105:26
[INFO] [stdout]     |
[INFO] [stdout] 105 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:135:26
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 for i in 0..(2 * $n_words) {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:197:26
[INFO] [stdout]     |
[INFO] [stdout] 197 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:211:26
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 for i in 0..($n_words - 1) {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:245:26
[INFO] [stdout]     |
[INFO] [stdout] 245 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:260:26
[INFO] [stdout]     |
[INFO] [stdout] 260 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:275:26
[INFO] [stdout]     |
[INFO] [stdout] 275 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:289:26
[INFO] [stdout]     |
[INFO] [stdout] 289 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:304:26
[INFO] [stdout]     |
[INFO] [stdout] 304 |                 for i in 0..$n_words {
[INFO] [stdout]     |                          ^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/uint.rs:326:26
[INFO] [stdout]     |
[INFO] [stdout] 326 |                 for i in word_shift..$n_words {
[INFO] [stdout]     |                          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/network/mod.rs:65:35
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/network/mod.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 f.write_str(error::Error::description(self))
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/blockdata/script.rs:197:35
[INFO] [stdout]     |
[INFO] [stdout] 197 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:107:31
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:117:31
[INFO] [stdout]     |
[INFO] [stdout] 117 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:127:31
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 error::Error::description(self),
[INFO] [stdout]     |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:132:51
[INFO] [stdout]     |
[INFO] [stdout] 132 |                 write!(f, "{}: {}", error::Error::description(self), m)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:134:76
[INFO] [stdout]     |
[INFO] [stdout] 134 |             Error::ParseFailed(ref e) => write!(f, "{}: {}", error::Error::description(self), e),
[INFO] [stdout]     |                                                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:136:51
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 write!(f, "{}: {}", error::Error::description(self), wver)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:139:51
[INFO] [stdout]     |
[INFO] [stdout] 139 |                 write!(f, "{}: {}", error::Error::description(self), swflag)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:142:51
[INFO] [stdout]     |
[INFO] [stdout] 142 |                 write!(f, "{}: {}", error::Error::description(self), nwcmd)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:145:51
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 write!(f, "{}: {}", error::Error::description(self), d)
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/util/mod.rs:81:43
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 f.write_str(error::Error::description(self))
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/bip32.rs:236:50
[INFO] [stdout]     |
[INFO] [stdout] 236 |             Error::Ecdsa(ref e) => error::Error::description(e),
[INFO] [stdout]     |                                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/network/mod.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blockdata/script.rs:202:32
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blockdata/transaction.rs:137:32
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn cause(&self) -> Option<&::std::error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn cause(&self) -> Option<&dyn (::std::error::Error)> {
[INFO] [stdout]     |                                +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/consensus/encode.rs:152:32
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/mod.rs:88:32
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/base58.rs:62:32
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/bip32.rs:225:32
[INFO] [stdout]     |
[INFO] [stdout] 225 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 225 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/contracthash.rs:76:32
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/util/privkey.rs:96:37
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn fmt_wif(&self, fmt: &mut fmt::Write) -> fmt::Result {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn fmt_wif(&self, fmt: &mut dyn fmt::Write) -> fmt::Result {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:172:35
[INFO] [stdout]     |
[INFO] [stdout] 172 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:173:39
[INFO] [stdout]     |
[INFO] [stdout] 173 |             Error::Base58(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:174:39
[INFO] [stdout]     |
[INFO] [stdout] 174 |             Error::Bech32(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:175:42
[INFO] [stdout]     |
[INFO] [stdout] 175 |             Error::ByteOrder(ref e) => e.description(),
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/network/mod.rs:65:35
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/uint.rs:351:18
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 <fmt::Debug>::fmt(self, f)
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/uint.rs:351:18
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 <fmt::Debug>::fmt(self, f)
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/util/mod.rs:99:42
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Error::Secp256k1(ref e) => e.description(),
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/mod.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |             Error::Encode(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/mod.rs:101:40
[INFO] [stdout]     |
[INFO] [stdout] 101 |             Error::Network(ref e) => e.description(),
[INFO] [stdout]     |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/internal_macros.rs:248:32
[INFO] [stdout]     |
[INFO] [stdout] 248 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/blockdata/script.rs:463:1
[INFO] [stdout]     |
[INFO] [stdout] 463 | impl_index_newtype!(Script, u8);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D trait-impl-range`
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:252:36
[INFO] [stdout]     |
[INFO] [stdout] 252 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/blockdata/script.rs:463:1
[INFO] [stdout]     |
[INFO] [stdout] 463 | impl_index_newtype!(Script, u8);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D explicit-range`
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]    --> src/internal_macros.rs:266:32
[INFO] [stdout]     |
[INFO] [stdout] 266 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/blockdata/script.rs:463:1
[INFO] [stdout]     |
[INFO] [stdout] 463 | impl_index_newtype!(Script, u8);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:270:36
[INFO] [stdout]     |
[INFO] [stdout] 270 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/blockdata/script.rs:463:1
[INFO] [stdout]     |
[INFO] [stdout] 463 | impl_index_newtype!(Script, u8);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/internal_macros.rs:248:32
[INFO] [stdout]     |
[INFO] [stdout] 248 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/blockdata/script.rs:689:1
[INFO] [stdout]     |
[INFO] [stdout] 689 | impl_index_newtype!(Builder, u8);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:252:36
[INFO] [stdout]     |
[INFO] [stdout] 252 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/blockdata/script.rs:689:1
[INFO] [stdout]     |
[INFO] [stdout] 689 | impl_index_newtype!(Builder, u8);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]    --> src/internal_macros.rs:266:32
[INFO] [stdout]     |
[INFO] [stdout] 266 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/blockdata/script.rs:689:1
[INFO] [stdout]     |
[INFO] [stdout] 689 | impl_index_newtype!(Builder, u8);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:270:36
[INFO] [stdout]     |
[INFO] [stdout] 270 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/blockdata/script.rs:689:1
[INFO] [stdout]     |
[INFO] [stdout] 689 | impl_index_newtype!(Builder, u8);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/internal_macros.rs:248:32
[INFO] [stdout]     |
[INFO] [stdout] 248 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl_array_newtype!(ChainCode, u8, 32);
[INFO] [stdout]     | -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:252:36
[INFO] [stdout]     |
[INFO] [stdout] 252 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl_array_newtype!(ChainCode, u8, 32);
[INFO] [stdout]     | -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]    --> src/internal_macros.rs:266:32
[INFO] [stdout]     |
[INFO] [stdout] 266 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl_array_newtype!(ChainCode, u8, 32);
[INFO] [stdout]     | -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:270:36
[INFO] [stdout]     |
[INFO] [stdout] 270 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl_array_newtype!(ChainCode, u8, 32);
[INFO] [stdout]     | -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/internal_macros.rs:248:32
[INFO] [stdout]     |
[INFO] [stdout] 248 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:42:1
[INFO] [stdout]     |
[INFO] [stdout] 42  | impl_array_newtype!(Fingerprint, u8, 4);
[INFO] [stdout]     | --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:252:36
[INFO] [stdout]     |
[INFO] [stdout] 252 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:42:1
[INFO] [stdout]     |
[INFO] [stdout] 42  | impl_array_newtype!(Fingerprint, u8, 4);
[INFO] [stdout]     | --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]    --> src/internal_macros.rs:266:32
[INFO] [stdout]     |
[INFO] [stdout] 266 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:42:1
[INFO] [stdout]     |
[INFO] [stdout] 42  | impl_array_newtype!(Fingerprint, u8, 4);
[INFO] [stdout]     | --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:270:36
[INFO] [stdout]     |
[INFO] [stdout] 270 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/bip32.rs:42:1
[INFO] [stdout]     |
[INFO] [stdout] 42  | impl_array_newtype!(Fingerprint, u8, 4);
[INFO] [stdout]     | --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/internal_macros.rs:248:32
[INFO] [stdout]     |
[INFO] [stdout] 248 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:376:1
[INFO] [stdout]     |
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:252:36
[INFO] [stdout]     |
[INFO] [stdout] 252 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:376:1
[INFO] [stdout]     |
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]    --> src/internal_macros.rs:266:32
[INFO] [stdout]     |
[INFO] [stdout] 266 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:376:1
[INFO] [stdout]     |
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:270:36
[INFO] [stdout]     |
[INFO] [stdout] 270 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:376:1
[INFO] [stdout]     |
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/internal_macros.rs:248:32
[INFO] [stdout]     |
[INFO] [stdout] 248 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:252:36
[INFO] [stdout]     |
[INFO] [stdout] 252 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]    --> src/internal_macros.rs:266:32
[INFO] [stdout]     |
[INFO] [stdout] 266 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]    --> src/internal_macros.rs:270:36
[INFO] [stdout]     |
[INFO] [stdout] 270 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/util/uint.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_index_newtype` which comes from the expansion of the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 24 previous errors; 142 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `syscoin` (lib) due to 25 previous errors; 142 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:172:35
[INFO] [stdout]     |
[INFO] [stdout] 172 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:173:39
[INFO] [stdout]     |
[INFO] [stdout] 173 |             Error::Base58(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:174:39
[INFO] [stdout]     |
[INFO] [stdout] 174 |             Error::Bech32(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/consensus/encode.rs:175:42
[INFO] [stdout]     |
[INFO] [stdout] 175 |             Error::ByteOrder(ref e) => e.description(),
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/uint.rs:351:18
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 <fmt::Debug>::fmt(self, f)
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 | construct_uint!(Uint256, 4);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/util/uint.rs:351:18
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 <fmt::Debug>::fmt(self, f)
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 | construct_uint!(Uint128, 2);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `construct_uint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/util/mod.rs:99:42
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Error::Secp256k1(ref e) => e.description(),
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/mod.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |             Error::Encode(ref e) => e.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/util/mod.rs:101:40
[INFO] [stdout]     |
[INFO] [stdout] 101 |             Error::Network(ref e) => e.description(),
[INFO] [stdout]     |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:850:25
[INFO] [stdout]     |
[INFO] [stdout] 850 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 850 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 850 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:854:25
[INFO] [stdout]     |
[INFO] [stdout] 854 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 854 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 854 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:858:25
[INFO] [stdout]     |
[INFO] [stdout] 858 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 858 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 858 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:862:25
[INFO] [stdout]     |
[INFO] [stdout] 862 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 862 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 862 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:866:25
[INFO] [stdout]     |
[INFO] [stdout] 866 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 866 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 866 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/consensus/encode.rs:870:25
[INFO] [stdout]     |
[INFO] [stdout] 870 |             x => panic!(x),
[INFO] [stdout]     |                         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `Result<Vec<u8>, encode::Error>`
[INFO] [stdout]     |
[INFO] [stdout] 870 |             x => panic!("{:?}", x),
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 870 |             x => std::panic::panic_any(x),
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 148 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "834a22b30feae05702e2f17b454e2b2e0799710d2c5136a0b55a0e17d548f180", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "834a22b30feae05702e2f17b454e2b2e0799710d2c5136a0b55a0e17d548f180", kill_on_drop: false }`
[INFO] [stdout] 834a22b30feae05702e2f17b454e2b2e0799710d2c5136a0b55a0e17d548f180
